<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>2025东盟·沙坪坝投资贸易洽谈会座次表</title>
    <script src="https://cdn.jsdelivr.net/npm/qrcode@1.5.0/build/qrcode.min.js"></script>
    <style>
        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }
        body {
            font-family: 'Microsoft YaHei', sans-serif;
            line-height: 1.6;
            color: #333;
            background-color: #f5f5f5;
            /* padding: 20px; */
        }


        @media screen and (min-width: 768px) and (max-width: 1024px){
            
        }
        @media not screen and (max){
            
        }
        @media screen {
            
        }
        .container {
            max-width: 1200px;
            margin: 0 auto;
            background: white;
            padding: 20px;
            border-radius: 8px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        }
        header {
            text-align: center;
            margin-bottom: 20px;
            padding-bottom: 15px;
            border-bottom: 1px solid #eee;
        }
        h1 {
            color: #2c3e50;
            margin-bottom: 10px;
        }
        .search-container {
            margin: 20px 0;
            display: flex;
            justify-content: center;
        }
        #search {
            padding: 10px 15px;
            width: 300px;
            border: 1px solid #ddd;
            border-radius: 4px 0 0 4px;
            font-size: 16px;
        }
        #search-btn {
            padding: 10px 20px;
            background: #3498db;
            color: white;
            border: none;
            border-radius: 0 4px 4px 0;
            cursor: pointer;
            font-size: 16px;
        }
        #search-btn:hover {
            background: #2980b9;
        }
        .instructions {
            background: #f8f9fa;
            padding: 15px;
            border-radius: 4px;
            margin-bottom: 20px;
            border-left: 4px solid #3498db;
        }
        .seating-map {
            overflow-x: auto;
            margin-bottom: 30px;
        }
        table {
            border-collapse: collapse;
            width: 100%;
            margin-bottom: 20px;
        }
        th, td {
            border: 1px solid #ddd;
            padding: 8px;
            text-align: center;
            font-size: 14px;
            height: 40px;
        }
        th {
            background-color: #f2f2f2;
            font-weight: bold;
        }
        .row-header {
            background-color: #e8f4fc;
            font-weight: bold;
            width: 40px;
        }
        .aisle-h {
            background-color: #f0f0f0;
            height: 20px;
        }
        .aisle-v {
            background-color: #f0f0f0;
            width: 20px;
        }
        .stage {
            text-align: center;
            font-weight: bold;
            padding: 10px;
            background: #34495e;
            color: white;
            margin-bottom: 20px;
        }
        .highlight {
            background-color: #ffeb3b;
            font-weight: bold;
            box-shadow: 0 0 8px rgba(255, 153, 0, 0.8);
        }
        .qr-section {
            text-align: center;
            margin-top: 30px;
            padding-top: 20px;
            border-top: 1px dashed #ccc;
        }
        #qrcode {
            display: inline-block;
            margin: 15px 0;
            padding: 10px;
            background: white;
            border-radius: 8px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        }
        .note {
            font-size: 14px;
            color: #7f8c8d;
            margin-top: 10px;
        }
        @media (max-width: 768px) {
            .container {
                padding: 10px;
            }
            #search {
                width: 70%;
            }
            th, td {
                padding: 4px;
                font-size: 12px;
            }
        }
    </style>
</head>
<body>
    <div class="container">
        <header>
            <h1>2025东盟·沙坪坝投资贸易洽谈会座次表</h1>
            <p>共有17排，每排28列，中间有2条横竖交叉的过道</p>
        </header>

        <div class="search-container">
            <input type="text" id="search" placeholder="请输入姓名关键字搜索...">
            <button id="search-btn">搜索</button>
        </div>

        <div class="instructions">
            <p><strong>使用说明：</strong>在搜索框中输入姓名关键字，点击搜索按钮即可高亮显示匹配的座位。搜索结果会滚动到第一个匹配项。</p>
        </div>

        <div class="stage">主 席 台</div>

        <div class="seating-map">
            <div id="seating-table"></div>
        </div>

        <div class="qr-section">
            <h2>分享此座次表</h2>
            <p>扫描下方二维码分享座次表</p>
            <div id="qrcode"><img src="./image/QRcode.png" alt=""></div>
            <p class="note">注：此二维码包含本页面的链接，扫描后可直接访问座次表</p>
        </div>
    </div>

    <script>
        // 座次表数据
        const seatingData = [
            ["叶爱莎", "王添", "弗兰克·奥莱亚", "温伟叶", "邹伟", "待反馈", "邬定峰", "陈尚文", "巡视员", "张健", "李仁波", "副主任", "李启杰", "陈宥全", "", "斯里巴杜卡哈斯尼扎太平局绅", "陈昱任", "陶兰梅", "阮氏兰 Dr. NGUYEN THI LAN", "尹友华", "李昂", "余鹏", "杨德刚", "张兴达", "周洋", "刘少毅", "尹丽娟", "刘文辉", "李凯锋"],
            ["陈刚", "阎桦", "邓娅", "张多乐", "殷宇", "王桥", "程辉", "李文杰", "罗登莉", "吴启文", "廖锴", "黄秀丽", "范仲诗", "裴原龙", "", "袁欣瑜", "李梓萱", "迪哈盛", "吴适存", "会长助理", "李骥", "管源", "周义坤", "孙宓", "谢羽纱", "戴文浚", "龚圆圆", "王优妮", "张舰"],
            ["黄涵艺董事兼总经理", "Theingi Maw", "Tun Myint", "许利全", "蔡雪利", "杨刚", "缪帅西", "何国庆", "张艺凡", "万诗琦", "陈宏", "张丽华", "杨宗芳", "李红", "", "韩思路", "杨琴", "张彪", "张名辉", "赵树乾", "李娅", "蒋真真", "何艺", "李俊", "余航昊", "许安全", "季金禧", "廖成才", "索姆赛伊"],
            ["Jesslyn Teo", "杨雪而", "杨震", "黄光志", "李文勳", "陈振丰", "黄锦勳", "张虎强", "Abdyhalil uulu Sheishemir", "杰伊托夫·马戈梅特·纳伊波维奇", "李玖彬", "李之", "刘懿", "裴阮梅英 Bùi ngyễn mai anh", "", "张大发", "叶双得", "王阳明", "CHO CHO AYE", "OTCHANAT", "Soe Naing", "董伟", "陈耀", "郑勇", "陈鑫", "萧伟全", "陈瑜欣", "周奚珂", "吴东毅"],
            ["余家豪", "梁豪荣", "郝文中", "穆思燕", "雷用成", "阮鸿献", "单雨楼", "销售经理", "蒋学文", "袁方兵", "王一力", "陈会龙", "林晓哲", "王福才", "", "张淑爱", "Heng Mengryza", "黄煜麟", "Andrew Chong", "Roger Liu", "王强", "王瀚舟", "田苗", "穆承程", "田晓林", "杨晓宇", "王翔", "巩小宁", "于艇"],
            ["胡云轩", "胡井友", "秦忆彬", "焦晨漪", "王沛", "唐璐", "何红艺", "待定", "待定", "廖忠", "林人山", "刘一夫", "王洪", "刘家昶", "", "张晋达", "陈喜贞", "刘力", "马敏", "谭战", "陈家中", "秦刚", "杨松", "张和平", "朱拥军", "李宁欣", "盛猛毅", "牟秉超", "廖科文"],
            ["胡翊凌", "何彦瑾", "张菀琳", "肖刚", "徐江正", "李宗洋", "宋小林", "袁泽兰", "袁文学", "王浩", "廖湘俊", "肖烨", "贾宏翔", "张浩淼", "", "唐江宇", "郑娟", "朋恒聪", "蒋立", "李明", "蒋云超", "王钞", "张虎强", "程浩", "赵奚偌", "杨震", "刘建军", "胡茂", "邱楷"],
            ["吕佶娟", "刘毅", "王诗豪", "梁豪荣", "吴锡", "李渝谊", "张润生", "蒋芝芝", "李雨灿", "赵晨", "陈益虹", "林鸿鹤", "孙祥林", "杨靖艺", "", "段方程", "文鲁", "蒋红梅", "王慈航", "付燕", "陈麒宇", "肖晓", "秦显鸿", "向俊豪", "杨柳", "邓沁", "谷明镜", "江惠芳", "孙子荣"],
            ["汪随风", "钟波", "胡文卓", "赵秀娟", "陈庚", "钟丽珺", "谭松涛", "吕秋月", "刘晋", "陈倩", "尹港", "刘冬", "唐治明", "辛瑜", "", "吕彧", "赵恒", "何为民", "高利", "牟雄杰", "李康", "李七七", "费翠", "杨浩", "陈恒毅", "余婧熙", "邢沁玥", "余勤", "邱燕"],
            ["黄科", "詹君子", "杨凡", "王振旭", "刘凯", "秦禄全", "熊龙", "秦清平", "待确认", "待确认", "熊小燕", "李红", "吴锐", "向双", "", "李岚", "何灿东", "何禾", "待确认", "唐学敏", "周纪凯", "宋明委", "李勇", "刘丁丁", "马驰骋", "傅黎明", "陈静", "刘茂", "待确认"],
            ["周永翔", "贺小江", "文韬", "胡雪莲", "陈凯飞", "马林发", "张华珺", "任红波", "朱立科", "刘德钦", "张念", "徐锡强", "唐健", "童静波", "", "王小平", "邹园", "张娟", "史小立", "吴康威", "张意力", "万家汐", "罗中", "黄洪", "王振", "肖强", "周兴华", "唐璐", "11-27"],
            ["12-1", "12-2", "12-3", "12-4", "12-5", "12-6", "12-7", "12-8", "12-9", "12-10", "12-11", "12-12", "12-13", "12-14", "", "12-15", "12-16", "12-17", "12-18", "12-19", "12-20", "12-21", "12-22", "12-23", "12-24", "12-25", "12-26", "12-27", "12-28"],
            ["13-1", "13-2", "13-3", "13-4", "13-5", "13-6", "13-7", "13-8", "13-9", "13-10", "13-11", "13-12", "13-13", "13-14", "", "13-15", "13-16", "13-17", "13-18", "13-19", "13-20", "13-21", "13-22", "13-23", "13-24", "13-25", "13-26", "13-27", "13-28"],
            ["14-1", "14-2", "14-3", "14-4", "14-5", "14-6", "14-7", "14-8", "14-9", "14-10", "14-11", "14-12", "14-13", "14-14", "", "14-15", "14-16", "14-17", "14-18", "14-19", "14-20", "14-21", "14-22", "14-23", "14-24", "14-25", "14-26", "14-27", "14-28"],
            ["15-1", "15-2", "15-3", "15-4", "15-5", "15-6", "15-7", "15-8", "15-9", "15-10", "15-11", "15-12", "15-13", "15-14", "", "15-15", "15-16", "15-17", "15-18", "15-19", "15-20", "15-21", "15-22", "15-23", "15-24", "15-25", "15-26", "15-27", "15-28"],
            ["16-1", "16-2", "16-3", "16-4", "16-5", "16-6", "16-7", "16-8", "16-9", "16-10", "16-11", "16-12", "16-13", "16-14", "", "16-15", "16-16", "16-17", "16-18", "16-19", "16-20", "16-21", "16-22", "16-23", "16-24", "16-25", "16-26", "16-27", "16-28"],
            ["17-1", "17-2", "17-3", "17-4", "17-5", "17-6", "17-7", "17-8", "17-9", "17-10", "17-11", "17-12", "17-13", "17-14", "", "17-15", "17-16", "17-17", "17-18", "17-19", "17-20", "17-21", "17-22", "17-23", "17-24", "17-25", "17-26", "17-27", "17-28"]
        ];

        // 生成座次表
        function generateSeatingTable() {
            const tableContainer = document.getElementById('seating-table');
            let tableHTML = '<table>';
            
            // 添加表头（列号）
            tableHTML += '<tr><th class="row-header">排/列</th>';
            for (let col = 1; col <= 28; col++) {
                tableHTML += `<th>${col}</th>`;
                if (col === 14) {
                    tableHTML += '<th class="aisle-v"></th>';
                }
            }
            tableHTML += '</tr>';
            
            // 添加座位数据
            for (let row = 0; row < seatingData.length; row++) {
                tableHTML += `<tr><td class="row-header">${row + 1}</td>`;
                
                for (let col = 0; col < 28; col++) {
                    if (col === 14) {
                        tableHTML += `<td class="aisle-v"></td>`;
                    }
                    
                    const name = seatingData[row][col] || '';
                    tableHTML += `<td data-row="${row}" data-col="${col}">${name}</td>`;
                }
                
                tableHTML += '</tr>';
                
                // 在第10排后添加横过道
                if (row === 9) {
                    tableHTML += '<tr class="aisle-h"><td colspan="30">过道</td></tr>';
                }
            }
            
            tableHTML += '</table>';
            tableContainer.innerHTML = tableHTML;
        }

        // 搜索功能
        function setupSearch() {
            const searchInput = document.getElementById('search');
            const searchBtn = document.getElementById('search-btn');
            
            const performSearch = () => {
                const searchText = searchInput.value.trim().toLowerCase();
                
                if (!searchText) {
                    alert('请输入姓名关键字进行搜索');
                    return;
                }
                
                // 移除之前的高亮
                const highlighted = document.querySelectorAll('.highlight');
                highlighted.forEach(el => el.classList.remove('highlight'));
                
                // 查找匹配项
                let firstMatch = null;
                const cells = document.querySelectorAll('td[data-row]');
                
                cells.forEach(cell => {
                    const name = cell.textContent.toLowerCase();
                    if (name.includes(searchText)) {
                        cell.classList.add('highlight');
                        if (!firstMatch) {
                            firstMatch = cell;
                        }
                    }
                });
                
                // 滚动到第一个匹配项
                if (firstMatch) {
                    firstMatch.scrollIntoView({ behavior: 'smooth', block: 'center' });
                } else {
                    alert('未找到匹配的姓名，请尝试其他关键字');
                }
            };
            
            searchBtn.addEventListener('click', performSearch);
            searchInput.addEventListener('keypress', (e) => {
                if (e.key === 'Enter') {
                    performSearch();
                }
            });
        }

        // 生成二维码
        function generateQRCode() {
            // 获取当前页面的URL
            const pageUrl = window.location.href;
            
            // 生成二维码
            QRCode.toCanvas(document.getElementById('qrcode'), pageUrl, {
                width: 180,
                margin: 1,
                color: {
                    dark: '#000000',
                    light: '#ffffff'
                }
            }, function(error) {
                if (error) console.error(error);
            });
        }

        // 初始化
        window.onload = function() {
            generateSeatingTable();
            setupSearch();
            generateQRCode();
        };
    </script>
</body>
</html>